package com.allianz.webapps.controllers;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.allianz.webapps.https.interfaces.AppDelRider.AppDelRider;
import com.allianz.webapps.https.interfaces.util.HttpsUtil;
import com.allianz.webapps.orderspojo.App;
import com.allianz.webapps.orderspojo.Cover;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

@Controller
@RequestMapping("main")
public class AppDelRiderController {

	@Autowired
	private ObjectMapper objectMapper;
	@Autowired
	private AppDelRider appDelRider;
	@RequestMapping("appdelrider")
	@ResponseBody
	public App appDelRider(@RequestParam(value="jsonParam") String jsonParam,HttpServletRequest request,HttpServletResponse response) throws JsonProcessingException, Exception{
//		AppDelRider appDelRider=new AppDelRider();
		Cover cover=objectMapper.readValue(jsonParam,Cover.class);
		String str=appDelRider.requestAppDelRiderParam(cover);
		String body1=HttpsUtil.httpsPost(str);
		JSONObject json=new JSONObject(body1);
		ObjectMapper mapper=new ObjectMapper();
		String body="";
		if(json.get("Body").equals(null)){
			if(!"S".equals(json.getString("Status")))
					throw new Exception(json.getString("ErrMsg"));
			else
				return null;	
			
		}
			body=json.getString("Body");
			App app=mapper.readValue(body,App.class);
			return app;
		}

	}
